//MainProgram:主函数，onload函数是程序的入口


var g_RealTimeRender;       //是否实时渲染

var GLMgr = null;           //GL管理器实例
var LayoutMgr = null;      //布局管理器
var stats;                  //FPS显示器（引入的外部内容）

onload=function()
{
    InitUIs();                                 //初始化UI变量
    initTFVars();                              //初始化传递函数相关变量
    CreateCanvas();

    //创建一个新的FPS显示器并将其加入LeftDiv节点
    stats = new Stats();
    document.getElementById("LeftDiv").appendChild(stats.dom);

    g_RenderSize =  512;                       //初始渲染画布尺寸为512
    GLMgr = new GLManager();
    GLMgr.init();

    LayoutMgr = new LayoutManager();           //创建布局管理器对象
    LayoutMgr.RePos();

    DrawHistogram();

    g_RealTimeRender = true;
    MainLoop();
}

//主循环（注意，这里从15版本开始变为更好的方式调用渲染）
function MainLoop() {


    stats.begin();
    if(GLMgr!=null)
        GLMgr.render();
    stats.end();

    if(g_RealTimeRender)        //如果是实时渲染，则进行下一帧的渲染
        requestAnimationFrame( MainLoop );
}
